home *** CD-ROM | disk | FTP | other *** search
/ Languguage OS 2 / Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO / gnu / jargon.lha / jargon.text < prev    next >
Text File  |  1993-03-08  |  87KB  |  1,704 lines

  1. -----------------------------------------------------------
  2.  
  3.       -*- Mode: Text -*-   Notes on updating this file:
  4.  
  5. This file is maintained at three locations.   It is  AIWORD.RF[UP,DOC]
  6. at SAIL, and GLS;JARGON >  at MIT-MC and at MIT-AI.   If you make  any
  7. changes, please FTP the new file to the other location.      (NOTE:   Use
  8. ASCII mode in FTP to avoid screwing up the tilde char!)      It is also a
  9. good idea to compare this file    against the copy on the other  machine
  10. before FTP'ing and to merge any     changes found there,  in case someone
  11. else forgot to do the FTP.    Also, please  let us know     (see list  of
  12. names below) about your changes so that we can double-check them.
  13.  
  14. Try to conform to the format already being used--70 character lines,
  15. 3-character indentations, pronunciations in parentheses, etymologies
  16. in brackets, single-space after def'n numbers and word classes, etc.
  17.  
  18. Stick to the standard ASCII character set.
  19.  
  20. If you'd rather not mung the file yourself, send your definitions to
  21. DON @ SAIL, GLS @ MIT-AI, and/or MRC @ SAIL.
  22.  
  23. The last edit (of this line, anyway) was by Don Woods, 82-11-14.
  24.  
  25. ======================================================================
  26.  
  27.     Compiled by Guy L. Steele Jr., Raphael Finkel, Donald
  28.     Woods,    Geoff  Goodfellow  and    Mark  Crispin,     with
  29.     assistance from the MIT     and Stanford AI  communities
  30.     and   Worcester       Polytechnic      Institute.     Some
  31.     contributions were  submitted  via the    ARPAnet     from
  32.     miscellaneous sites.
  33.  
  34. Verb doubling: a standard construction is to double a verb and use it
  35.    as a comment on what the implied subject does.  Often used to
  36.    terminate a conversation.  Typical examples involve WIN, LOSE,
  37.    HACK, FLAME, BARF, CHOMP:
  38.     "The disk heads just crashed."    "Lose, lose."
  39.     "Mostly he just talked about his --- crock.  Flame, flame."
  40.     "Boy, what a bagbiter!    Chomp, chomp!"
  41.  
  42. Soundalike slang: similar to Cockney rhyming slang.  Often made up on
  43.    the spur of the moment.  Standard examples:
  44.     Boston Globe => Boston Glob
  45.     Herald American => Horrid (Harried) American
  46.     New York Times => New York Slime
  47.     historical reasons => hysterical raisins
  48.     government property - do not duplicate (seen on keys)
  49.         => government duplicity - do not propagate
  50.    Often the substitution will be made in such a way as to slip in
  51.    a standard jargon word:
  52.     Dr. Dobb's Journal => Dr. Frob's Journal
  53.     creeping featurism => feeping creaturism
  54.     Margaret Jacks Hall => Marginal Hacks Hall
  55.  
  56. The -P convention: turning a word into a question by appending the
  57.    syllable "P"; from the LISP convention of appending the letter "P"
  58.    to denote a predicate (a Boolean-values function).  The question
  59.    should expect a yes/no answer, though it needn't.  (See T and NIL.)
  60.      At dinnertime: "Foodp?"  "Yeah, I'm pretty hungry." or "T!"
  61.      "State-of-the-world-P?"  (Straight) "I'm about to go home."
  62.                   (Humorous) "Yes, the world has a state."
  63.    [One of the best of these is a Gosperism (i.e., due to Bill
  64.    Gosper).  When we were at a Chinese restaurant, he wanted to know
  65.    whether someone would like to share with him a two-person-sized
  66.    bowl of soup.  His inquiry was: "Split-p soup?" --GLS]
  67.  
  68. Peculiar nouns: MIT AI hackers love to take various words and add the
  69.    wrong endings to them to make nouns and verbs, often by extending a
  70.    standard rule to nonuniform cases.  Examples:
  71.         porous => porosity
  72.         generous => generosity
  73.     Ergo:    mysterious => mysteriosity
  74.         ferrous => ferocity
  75.    Other examples:  winnitude, disgustitude, hackification.
  76.  
  77. Spoken inarticulations:     Words such as "mumble", "sigh", and "groan"
  78.    are spoken in places where their referent might more naturally be
  79.    used.  It has been suggested that this usage derives from the
  80.    impossibility of representing such noises in a com link.  Another
  81.    expression sometimes heard is "complain!"
  82.  
  83. @BEGIN (primarily CMU) with @END, used humorously in writing to
  84.    indicate a context or to remark on the surrounded text.  From the
  85.    SCRIBE command of the same name.  For example:
  86.     @Begin(Flame)
  87.     Predicate logic is the only good programming language.
  88.     Anyone who would use anything else is an idiot.     Also,
  89.     computers should be tredecimal instead of binary.
  90.     @End(Flame)
  91.  
  92. ANGLE BRACKETS (primarily MIT) n. Either of the characters "<" and
  93.    ">".     See BROKET.
  94.  
  95. AOS (aus (East coast) ay-ahs (West coast)) [based on a PDP-10
  96.    increment instruction] v. To increase the amount of something.
  97.    "Aos the campfire."    Usage: considered silly.  See SOS.
  98.  
  99. ARG n. Abbreviation for "argument" (to a function), used so often as
  100.    to have become a new word.
  101.  
  102. AUTOMAGICALLY adv. Automatically, but in a way which, for some reason
  103.    (typically because it is too complicated, or too ugly, or perhaps
  104.    even too trivial), I don't feel like explaining to you.  See MAGIC.
  105.    Example: Some programs which produce XGP output files spool them
  106.    automagically.
  107.  
  108. BAGBITER 1. n. Equipment or program that fails, usually
  109.    intermittently.  2. BAGBITING: adj. Failing hardware or software.
  110.    "This bagbiting system won't let me get out of spacewar."  Usage:
  111.    verges on obscenity.     Grammatically separable; one may speak of
  112.    "biting the bag".  Synonyms: LOSER, LOSING, CRETINOUS, BLETCHEROUS,
  113.    BARFUCIOUS, CHOMPER, CHOMPING.
  114.  
  115. BANG n. Common alternate name for EXCL (q.v.), especially at CMU.  See
  116.    SHRIEK.
  117.  
  118. BAR 1. The second metasyntactic variable, after FOO.  "Suppose we have
  119.    two functions FOO and BAR.  FOO calls BAR..."  2. Often appended to
  120.    FOO to produce FOOBAR.
  121.  
  122. BARF [from the "layman" slang, meaning "vomit"] 1. interj. Term of
  123.    disgust.  See BLETCH.  2. v. Choke, as on input.  May mean to give
  124.    an error message.  "The function `=' compares two fixnums or two
  125.    flonums, and barfs on anything else."  3. BARFULOUS, BARFUCIOUS:
  126.    adj. Said of something which would make anyone barf, if only for
  127.    aesthetic reasons.
  128.  
  129. BELLS AND WHISTLES n. Unnecessary but useful (or amusing) features of
  130.    a program.  "Now that we've got the basic program working, let's go
  131.    back and add some bells and whistles."  Nobody seems to know what
  132.    distinguishes a bell from a whistle.
  133.  
  134. BIGNUMS [from Macsyma] n. 1. In backgammon, large numbers on the dice.
  135.    2. Multiple-precision (sometimes infinitely extendable) integers
  136.    and, through analogy, any very large numbers.  3. EL CAMINO BIGNUM:
  137.    El Camino Real, a street through the San Francisco peninsula that
  138.    originally extended (and still appears in places) all the way to
  139.    Mexico City.     It was termed "El Camino Double Precision" when
  140.    someone noted it was a very long street, and then "El Camino
  141.    Bignum" when it was pointed out that it was hundreds of miles long.
  142.  
  143. BIN [short for BINARY; used as a second file name on ITS] 1. n.
  144.    BINARY.  2. BIN FILE: A file containing the BIN for a program.
  145.    Usage: used at MIT, which runs on ITS.  The equivalent term at
  146.    Stanford is DMP (pronounced "dump") FILE.  Other names used include
  147.    SAV ("save") FILE (DEC and Tenex), SHR ("share") and LOW FILES
  148.    (DEC), and EXE ("ex'ee") FILE (DEC and Twenex).  Also in this
  149.    category are the input files to the various flavors of linking
  150.    loaders (LOADER, LINK-10, STINK), called REL FILES.
  151.  
  152. BINARY n. The object code for a program.
  153.  
  154. BIT n. 1. The unit of information; the amount of information obtained
  155.    by asking a yes-or-no question.  "Bits" is often used simply to
  156.    mean information, as in "Give me bits about DPL replicators".  2.
  157.    [By extension from "interrupt bits" on a computer] A reminder that
  158.    something should be done or talked about eventually.     Upon seeing
  159.    someone that you haven't talked to for a while, it's common for one
  160.    or both to say, "I have a bit set for you."
  161.  
  162. BITBLT (bit'blit) 1. v. To perform a complex operation on a large
  163.    block of bits, usually involving the bits being displayed on a
  164.    bitmapped raster screen.  See BLT.  2. n. The operation itself.
  165.  
  166. BIT BUCKET n. 1. A receptacle used to hold the runoff from the
  167.    computer's shift registers.    2. Mythical destination of deleted
  168.    files, GC'ed memory, and other no-longer-accessible data.  3. The
  169.    physical device associated with "NUL:".
  170.  
  171. BLETCH [from German "brechen", to vomit (?)] 1. interj. Term of
  172.    disgust.  2. BLETCHEROUS: adj. Disgusting in design or function.
  173.    "This keyboard is bletcherous!"  Usage: slightly comic.
  174.  
  175. BLT (blit, very rarely belt) [based on the PDP-10 block transfer
  176.    instruction; confusing to users of the PDP-11] 1. v. To transfer a
  177.    large contiguous package of information from one place to another.
  178.    2. THE BIG BLT: n. Shuffling operation on the PDP-10 under some
  179.    operating systems that consumes a significant amount of computer
  180.    time.  3. (usually pronounced B-L-T) n. Sandwich containing bacon,
  181.    lettuce, and tomato.
  182.  
  183. BOGOSITY n. The degree to which something is BOGUS (q.v.).  At CMU,
  184.    bogosity is measured with a bogometer; typical use: in a seminar,
  185.    when a speaker says something bogus, a listener might raise his
  186.    hand and say, "My bogometer just triggered."     The agreed-upon unit
  187.    of bogosity is the microLenat (uL).
  188.  
  189. BOGUS (WPI, Yale, Stanford) adj. 1. Non-functional.  "Your patches are
  190.    bogus."  2. Useless.     "OPCON is a bogus program."  3. False.     "Your
  191.    arguments are bogus."  4. Incorrect.     "That algorithm is bogus."
  192.    5. Silly.  "Stop writing those bogus sagas."     (This word seems to
  193.    have some, but not all, of the connotations of RANDOM.)
  194.    [Etymological note from Lehman/Reid at CMU:    "Bogus" was originally
  195.    used (in this sense) at Princeton, in the late 60's.     It was used
  196.    not particularly in the CS department, but all over campus.    It
  197.    came to Yale, where one of us (Lehman) was an undergraduate, and
  198.    (we assume) elsewhere through the efforts of Princeton alumni who
  199.    brought the word with them from their alma mater.  In the Yale
  200.    case, the alumnus is Michael Shamos, who was a graduate student at
  201.    Yale and is now a faculty member here.  A glossary of bogus words
  202.    was compiled at Yale when the word was first popularized (e.g.,
  203.    autobogophobia: the fear of becoming bogotified).]
  204.  
  205. BOUNCE (Stanford) v. To play volleyball.  "Bounce, bounce!  Stop
  206.    wasting time on the computer and get out to the court!"
  207.  
  208. BRAIN-DAMAGED [generalization of "Honeywell Brain Damage" (HBD), a
  209.    theoretical disease invented to explain certain utter cretinisms in
  210.    Multics] adj. Obviously wrong; cretinous; demented.    There is an
  211.    implication that the person responsible must have suffered brain
  212.    damage, because he should have known better.     Calling something
  213.    brain-damaged is really bad; it also implies it is unusable.
  214.  
  215. BREAK v. 1. To cause to be broken (in any sense).  "Your latest patch
  216.    to the system broke the TELNET server."  2. (of a program) To stop
  217.    temporarily, so that it may be examined for debugging purposes.
  218.    The place where it stops is a BREAKPOINT.
  219.  
  220. BROKEN adj. 1. Not working properly (of programs).  2. Behaving
  221.    strangely; especially (of people), exhibiting extreme depression.
  222.  
  223. BROKET [by analogy with "bracket": a "broken bracket"] (primarily
  224.    Stanford) n. Either of the characters "<" and ">".  (At MIT, and
  225.    apparently in The Real World (q.v.) as well, these are usually
  226.    called ANGLE BRACKETS.)
  227.  
  228. BUCKY BITS (primarily Stanford) n. The bits produced by the CTRL and
  229.    META shift keys on a Stanford (or Knight) keyboard.    Rumor has it
  230.    that the idea for extra bits for characters came from Niklaus
  231.    Wirth, and that his nickname was `Bucky'.
  232.    DOUBLE BUCKY: adj. Using both the CTRL and META keys.  "The command
  233.    to burn all LEDs is double bucky F."
  234.  
  235. BUG [from telephone terminology, "bugs in a telephone cable", blamed
  236.    for noisy lines; however, Jean Sammet has repeatedly been heard to
  237.    claim that the use of the term in CS comes from a story concerning
  238.    actual bugs found wedged in an early malfunctioning computer] n. An
  239.    unwanted and unintended property of a program.  (People can have
  240.    bugs too (even winners) as in "PHW is a super winner, but he has
  241.    some bugs.")     See FEATURE.
  242.  
  243. BUM 1. v. To make highly efficient, either in time or space, often at
  244.    the expense of clarity.  The object of the verb is usually what was
  245.    removed ("I managed to bum three more instructions.") but can be
  246.    the program being changed ("I bummed the inner loop down to seven
  247.    microseconds.")  2. n. A small change to an algorithm to make it
  248.    more efficient.
  249.  
  250. BUZZ v. To run in a very tight loop, perhaps without guarantee of
  251.    getting out.
  252.  
  253. CANONICAL adj. The usual or standard state or manner of something.
  254.    A true story:  One Bob Sjoberg, new at the MIT AI Lab, expressed
  255.    some annoyance at the use of jargon.     Over his loud objections, we
  256.    made a point of using jargon as much as possible in his presence,
  257.    and eventually it began to sink in.    Finally, in one conversation,
  258.    he used the word "canonical" in jargon-like fashion without
  259.    thinking.
  260.    Steele: "Aha!  We've finally got you talking jargon too!"
  261.    Stallman: "What did he say?"
  262.    Steele: "He just used `canonical' in the canonical way."
  263.  
  264. CATATONIA (kat-uh-toe'nee-uh) n. A condition of suspended animation in
  265.    which the system is in a wedged (CATATONIC) state.
  266.  
  267. CDR (ku'der) [from LISP] v. With "down", to trace down a list of
  268.    elements.  "Shall we cdr down the agenda?"  Usage: silly.
  269.  
  270. CHINE NUAL n. The Lisp Machine Manual, so called because the title is
  271.    wrapped around the cover so only those letters show.
  272.  
  273. CHOMP v. To lose; to chew on something of which more was bitten off
  274.    than one can.  Probably related to gnashing of teeth.  See
  275.    BAGBITER.  A hand gesture commonly accompanies this, consisting of
  276.    the four fingers held together as if in a mitten or hand puppet,
  277.    and the fingers and thumb open and close rapidly to illustrate a
  278.    biting action.  The gesture alone means CHOMP CHOMP (see Verb
  279.    Doubling).
  280.  
  281. CLOSE n. Abbreviation for "close (or right) parenthesis", used when
  282.    necessary to eliminate oral ambiguity.  See OPEN.
  283.  
  284. COKEBOTTLE n. Any very unusual character.  MIT people complain about
  285.    the "control-meta-cokebottle" commands at SAIL, and SAIL people
  286.    complain about the "altmode-altmode-cokebottle" commands at MIT.
  287.  
  288. COM MODE (variant: COMM MODE) [from the ITS feature for linking two or
  289.    more terminals together so that text typed on any is echoed on all,
  290.    providing a means of conversation among hackers] n. The state a
  291.    terminal is in when linked to another in this way.  Com mode has a
  292.    special set of jargon words, used to save typing, which are not
  293.    used orally:
  294.     BCNU    Be seeing you.
  295.     BTW    By the way...
  296.     BYE?    Are you ready to unlink?  (This is the standard way to
  297.         end a com mode conversation; the other person types
  298.         BYE to confirm, or else continues the conversation.)
  299.     CUL    See you later.
  300.     FOO?    A greeting, also meaning R U THERE?  Often used in the
  301.         case of unexpected links, meaning also "Sorry if I
  302.         butted in" (linker) or "What's up?" (linkee).
  303.     FYI    For your information...
  304.     GA    Go ahead (used when two people have tried to type
  305.         simultaneously; this cedes the right to type to
  306.         the other).
  307.     HELLOP    A greeting, also meaning R U THERE?  (An instance
  308.         of the "-P" convention.)
  309.     MtFBWY    May the Force be with you.  (From Star Wars.)
  310.     NIL    No (see the main entry for NIL).
  311.     OBTW    Oh, by the way...
  312.     R U THERE?    Are you there?
  313.     SEC    Wait a second (sometimes written SEC...).
  314.     T    Yes (see the main entry for T).
  315.     TNX    Thanks.
  316.     TNX 1.0E6    Thanks a million (humorous).
  317.     <double CRLF>  When the typing party has finished, he types
  318.         two CRLF's to signal that he is done; this leaves a
  319.         blank line between individual "speeches" in the
  320.         conversation, making it easier to re-read the
  321.         preceding text.
  322.     <name>: When three or more terminals are linked, each speech
  323.         is preceded by the typist's login name and a colon (or
  324.         a hyphen) to indicate who is typing.  The login name
  325.         often is shortened to a unique prefix (possibly a
  326.         single letter) during a very long conversation.
  327.     /\/\/\    The equivalent of a giggle.
  328.    At Stanford, where the link feature is implemented by "talk loops",
  329.    the term TALK MODE is used in place of COM MODE.  Most of the above
  330.    "sub-jargon" is used at both Stanford and MIT.
  331.  
  332. CONNECTOR CONSPIRACY [probably came into prominence with the
  333.    appearance of the KL-10, none of whose connectors match anything
  334.    else] n. The tendency of manufacturers (or, by extension,
  335.    programmers or purveyors of anything) to come up with new products
  336.    which don't fit together with the old stuff, thereby making you buy
  337.    either all new stuff or expensive interface devices.
  338.  
  339. CONS [from LISP] 1. v. To add a new element to a list.    2. CONS UP:
  340.    v. To synthesize from smaller pieces: "to cons up an example".
  341.  
  342. CRASH 1. n. A sudden, usually drastic failure.    Most often said of the
  343.    system (q.v., definition #1), sometimes of magnetic disk drives.
  344.    "Three lusers lost their files in last night's disk crash."    A disk
  345.    crash which entails the read/write heads dropping onto the surface
  346.    of the disks and scraping off the oxide may also be referred to as
  347.    a "head crash".  2. v. To fail suddenly.  "Has the system just
  348.    crashed?"  Also used transitively to indicate the cause of the
  349.    crash (usually a person or a program, or both).  "Those idiots
  350.    playing spacewar crashed the system."  Sometimes said of people.
  351.    See GRONK OUT.
  352.  
  353. CRETIN 1. n. Congenital loser (q.v.).  2. CRETINOUS: adj. See
  354.    BLETCHEROUS and BAGBITING.  Usage: somewhat ad hominem.
  355.  
  356. CRLF (cur'lif, sometimes crul'lif) n. A carriage return (CR) followed
  357.    by a line feed (LF).     See TERPRI.
  358.  
  359. CROCK [probably from "layman" slang, which in turn may be derived from
  360.    "crock of shit"] n. An awkward feature or programming technique
  361.    that ought to be made cleaner.  Example: Using small integers to
  362.    represent error codes without the program interpreting them to the
  363.    user is a crock.  Also, a technique that works acceptably but which
  364.    is quite prone to failure if disturbed in the least, for example
  365.    depending on the machine opcodes having particular bit patterns so
  366.    that you can use instructions as data words too; a tightly woven,
  367.    almost completely unmodifiable structure.
  368.  
  369. CRUFTY [from "cruddy"] adj. 1. Poorly built, possibly overly complex.
  370.    "This is standard old crufty DEC software".    Hence CRUFT, n. shoddy
  371.    construction.  Also CRUFT, v. [from hand cruft, pun on hand craft]
  372.    to write assembler code for something normally (and better) done by
  373.    a compiler.    2. Unpleasant, especially to the touch, often with
  374.    encrusted junk.  Like spilled coffee smeared with peanut butter and
  375.    catsup.  Hence CRUFT, n. disgusting mess.  3. Generally unpleasant.
  376.    CRUFTY or CRUFTIE n. A small crufty object (see FROB); often one
  377.    which doesn't fit well into the scheme of things.  "A LISP property
  378.    list is a good place to store crufties (or, random cruft)."
  379.    [Note:  Does CRUFT have anything to do with the Cruft Lab at
  380.    Harvard?  I don't know, though I was a Harvard student. - GLS]
  381.  
  382. CRUNCH v. 1. To process, usually in a time-consuming or complicated
  383.    way.     Connotes an essentially trivial operation which is
  384.    nonetheless painful to perform.  The pain may be due to the
  385.    triviality being imbedded in a loop from 1 to 1000000000.  "FORTRAN
  386.    programs do mostly number crunching."  2. To reduce the size of a
  387.    file by a complicated scheme that produces bit configurations
  388.    completely unrelated to the original data, such as by a Huffman
  389.    code.  (The file ends up looking like a paper document would if
  390.    somebody crunched the paper into a wad.)  Since such compression
  391.    usually takes more computations than simpler methods such as
  392.    counting repeated characters (such as spaces) the term is doubly
  393.    appropriate.     (This meaning is usually used in the construction
  394.    "file crunch(ing)" to distinguish it from "number crunch(ing)".)
  395.    3. n. The character "#".  Usage: used at Xerox and CMU, among other
  396.    places.  Other names for "#" include SHARP, NUMBER, HASH, PIG-PEN,
  397.    POUND-SIGN, and MESH.  GLS adds: I recall reading somewhere that
  398.    most of these are names for the # symbol IN CONTEXT.     The name for
  399.    the sign itself is "octothorp".
  400.  
  401. CTY (city) n. The terminal physically associated with a computer's
  402.    operating console.
  403.  
  404. CUSPY [from the DEC acronym CUSP, for Commonly Used System Program,
  405.    i.e., a utility program used by many people] (WPI) adj. 1. (of a
  406.    program) Well-written.  2. Functionally excellent.  A program which
  407.    performs well and interfaces well to users is cuspy.     See RUDE.
  408.  
  409. DAEMON (day'mun, dee'mun) [archaic form of "demon", which has slightly
  410.    different connotations (q.v.)] n. A program which is not invoked
  411.    explicitly, but which lays dormant waiting for some condition(s) to
  412.    occur.  The idea is that the perpetrator of the condition need not
  413.    be aware that a daemon is lurking (though often a program will
  414.    commit an action only because it knows that it will implicitly
  415.    invoke a daemon).  For example, writing a file on the lpt spooler's
  416.    directory will invoke the spooling daemon, which prints the file.
  417.    The advantage is that programs which want (in this example) files
  418.    printed need not compete for access to the lpt.  They simply enter
  419.    their implicit requests and let the daemon decide what to do with
  420.    them.  Daemons are usually spawned automatically by the system, and
  421.    may either live forever or be regenerated at intervals.  Usage:
  422.    DAEMON and DEMON (q.v.) are often used interchangeably, but seem to
  423.    have distinct connotations.    DAEMON was introduced to computing by
  424.    CTSS people (who pronounced it dee'mon) and used it to refer to
  425.    what is now called a DRAGON or PHANTOM (q.v.).  The meaning and
  426.    pronunciation have drifted, and we think this glossary reflects
  427.    current usage.
  428.  
  429. DAY MODE  See PHASE (of people).
  430.  
  431. DEADLOCK n. A situation wherein two or more processes are unable to
  432.    proceed because each is waiting for another to do something.     A
  433.    common example is a program communicating to a PTY or STY, which
  434.    may find itself waiting for output from the PTY/STY before sending
  435.    anything more to it, while the PTY/STY is similarly waiting for
  436.    more input from the controlling program before outputting anything.
  437.    (This particular flavor of deadlock is called "starvation".
  438.    Another common flavor is "constipation", where each process is
  439.    trying to send stuff to the other, but all buffers are full because
  440.    nobody is reading anything.)     See DEADLY EMBRACE.
  441.  
  442. DEADLY EMBRACE n. Same as DEADLOCK (q.v.), though usually used only
  443.    when exactly two processes are involved.  DEADLY EMBRACE is the
  444.    more popular term in Europe; DEADLOCK in the United States.
  445.  
  446. DEMENTED adj. Yet another term of disgust used to describe a program.
  447.    The connotation in this case is that the program works as designed,
  448.    but the design is bad.  For example, a program that generates large
  449.    numbers of meaningless error messages implying it is on the point
  450.    of imminent collapse.
  451.  
  452. DEMON (dee'mun) n. A portion of a program which is not invoked
  453.    explicitly, but which lays dormant waiting for some condition(s) to
  454.    occur.  See DAEMON.    The distinction is that demons are usually
  455.    processes within a program, while daemons are usually programs
  456.    running on an operating system.  Demons are particularly common in
  457.    AI programs.     For example, a knowledge manipulation program might
  458.    implement inference rules as demons.     Whenever a new piece of
  459.    knowledge was added, various demons would activate (which demons
  460.    depends on the particular piece of data) and would create
  461.    additional pieces of knowledge by applying their respective
  462.    inference rules to the original piece.  These new pieces could in
  463.    turn activate more demons as the inferences filtered down through
  464.    chains of logic.  Meanwhile the main program could continue with
  465.    whatever its primary task was.
  466.  
  467. DIABLO (dee-ah'blow) [from the Diablo printer] 1. n. Any letter-
  468.    quality printing device.  2. v. To produce letter-quality output
  469.    from such a device.
  470.  
  471. DIDDLE v. To work with in a not particularly serious manner.  "I
  472.    diddled with a copy of ADVENT so it didn't double-space all the
  473.    time."  "Let's diddle this piece of code and see if the problem
  474.    goes away."    See TWEAK and TWIDDLE.
  475.  
  476. DIKE [from "diagonal cutters"] v. To remove a module or disable it.
  477.    "When in doubt, dike it out."
  478.  
  479. DMP (dump)  See BIN.
  480.  
  481. DO PROTOCOL [from network protocol programming] v. To perform an
  482.    interaction with somebody or something that follows a clearly
  483.    defined procedure.  For example, "Let's do protocol with the check"
  484.    at a restaurant means to ask the waitress for the check, calculate
  485.    the tip and everybody's share, generate change as necessary, and
  486.    pay the bill.
  487.  
  488. DOWN 1. adj. Not working.  "The up escalator is down."    2. TAKE DOWN,
  489.    BRING DOWN: v. To deactivate, usually for repair work.  See UP.
  490.  
  491. DPB (duh-pib') [from the PDP-10 instruction set] v. To plop something
  492.    down in the middle.
  493.  
  494. DRAGON n. (MIT) A program similar to a "daemon" (q.v.), except that it
  495.    is not invoked at all, but is instead used by the system to perform
  496.    various secondary tasks.  A typical example would be an accounting
  497.    program, which keeps track of who is logged in, accumulates load-
  498.    average statistics, etc.  At MIT, all free TV's display a list of
  499.    people logged in, where they are, what they're running, etc. along
  500.    with some random picture (such as a unicorn, Snoopy, or the
  501.    Enterprise) which is generated by the "NAME DRAGON".     See PHANTOM.
  502.  
  503. DWIM [Do What I Mean] 1. adj. Able to guess, sometimes even correctly,
  504.    what result was intended when provided with bogus input.  Often
  505.    suggested in jest as a desired feature for a complex program.  A
  506.    related term, more often seen as a verb, is DTRT (Do The Right
  507.    Thing).  2. n. The INTERLISP function that attempts to accomplish
  508.    this feat by correcting many of the more common errors.  See HAIRY.
  509.  
  510. ENGLISH n. The source code for a program, which may be in any
  511.    language, as opposed to BINARY.  Usage: slightly obsolete, used
  512.    mostly by old-time hackers, though recognizable in context.    At
  513.    MIT, directory SYSENG is where the "English" for system programs is
  514.    kept, and SYSBIN, the binaries.  SAIL has many such directories,
  515.    but the canonical one is [CSP,SYS].
  516.  
  517. EPSILON [from standard mathematical notation for a small quantity] 1.
  518.    n. A small quantity of anything.  "The cost is epsilon."  2. adj.
  519.    Very small, negligible; less than marginal (q.v.).  "We can get
  520.    this feature for epsilon cost."  3. WITHIN EPSILON OF: Close enough
  521.    to be indistinguishable for all practical purposes.
  522.  
  523. EXCH (ex'chuh, ekstch) [from the PDP-10 instruction set] v. To
  524.    exchange two things, each for the other.
  525.  
  526. EXCL (eks'cul) n. Abbreviation for "exclamation point".     See BANG,
  527.    SHRIEK, WOW.
  528.  
  529. EXE (ex'ee)  See BIN.
  530.  
  531. FAULTY adj. Same denotation as "bagbiting", "bletcherous", "losing",
  532.    q.v., but the connotation is much milder.
  533.  
  534. FEATURE n. 1. A surprising property of a program.  Occasionally docu-
  535.    mented.  To call a property a feature sometimes means the author of
  536.    the program did not consider the particular case, and the program
  537.    makes an unexpected, although not strictly speaking an incorrect
  538.    response.  See BUG.    "That's not a bug, that's a feature!"  A bug
  539.    can be changed to a feature by documenting it.  2. A well-known and
  540.    beloved property; a facility.  Sometimes features are planned, but
  541.    are called crocks by others.     An approximately correct spectrum:
  542.  
  543.    (These terms are all used to describe programs or portions thereof,
  544.    except for the first two, which are included for completeness.)
  545.     CRASH  STOPPAGE     BUG  SCREW  LOSS  MISFEATURE
  546.         CROCK  KLUGE  HACK  WIN     FEATURE  PERFECTION
  547.    (The last is never actually attained.)
  548.  
  549. FEEP 1. n. The soft bell of a display terminal (except for a VT-52!);
  550.    a beep.  2. v. To cause the display to make a feep sound.  TTY's do
  551.    not have feeps.  Alternate forms: BEEP, BLEEP, or just about
  552.    anything suitably onomatopoeic.  The term BREEDLE is sometimes
  553.    heard at SAIL, where the terminal bleepers are not particularly
  554.    "soft" (they sound more like the musical equivalent of sticking out
  555.    one's tongue).  The "feeper" on a VT-52 has been compared to the
  556.    sound of a '52 Chevy stripping its gears.
  557.  
  558. FENCEPOST ERROR n. The discrete equivalent of a boundary condition.
  559.    Often exhibited in programs by iterative loops.  From the following
  560.    problem: "If you build a fence 100 feet long with posts ten feet
  561.    apart, how many posts do you need?"    (Either 9 or 11 is a better
  562.    answer than the obvious 10.)
  563.  
  564. FINE (WPI) adj. Good, but not good enough to be CUSPY.    [The word FINE
  565.    is used elsewhere, of course, but without the implicit comparison
  566.    to the higher level implied by CUSPY.]
  567.  
  568. FLAG DAY [from a bit of Multics history involving a change in the
  569.    ASCII character set originally scheduled for June 14, 1966]
  570.    n. A software change which is neither forward nor backward
  571.    compatible, and which is costly to make and costly to revert.
  572.    "Can we install that without causing a flag day for all users?"
  573.  
  574. FLAKEY adj. Subject to frequent lossages.  See LOSSAGE.
  575.  
  576. FLAME v. To speak incessantly and/or rabidly on some relatively
  577.    uninteresting subject or with a patently ridiculous attitude.
  578.    FLAME ON: v. To continue to flame.  See RAVE.  This punning
  579.    reference to Marvel comics' Human Torch has been lost as
  580.    recent usage completes the circle:  "Flame on" now usually
  581.    means "beginning of flame".
  582.  
  583. FLAP v. To unload a DECtape (so it goes flap, flap, flap...).  Old
  584.    hackers at MIT tell of the days when the disk was device 0 and
  585.    microtapes were 1, 2,... and attempting to flap device 0 would
  586.    instead start a motor banging inside a cabinet near the disk!
  587.  
  588. FLAVOR n. 1. Variety, type, kind.  "DDT commands come in two flavors."
  589.    See VANILLA.     2. The attribute of causing something to be
  590.    FLAVORFUL.  "This convention yields additional flavor by allowing
  591.    one to..."  3. On the LispMachine, an object-oriented programming
  592.    system ("flavors"); each class of object is a flavor.
  593.  
  594. FLAVORFUL adj. Aesthetically pleasing.    See RANDOM and LOSING for
  595.    antonyms.  See also the entry for TASTE.
  596.  
  597. FLUSH v. 1. To delete something, usually superfluous.  "All that
  598.    nonsense has been flushed."    Standard ITS terminology for aborting
  599.    an output operation.     2. To leave at the end of a day's work (as
  600.    opposed to leaving for a meal).  "I'm going to flush now."  "Time
  601.    to flush."  3. To exclude someone from an activity.
  602.  
  603. FOO 1. [from Yiddish "feh" or the Anglo-Saxon "fooey!"] interj. Term
  604.    of disgust.    2. [from FUBAR (Fucked Up Beyond All Recognition),
  605.    from WWII, often seen as FOOBAR] Name used for temporary programs,
  606.    or samples of three-letter names.  Other similar words are BAR, BAZ
  607.    (Stanford corruption of BAR), and rarely RAG.  These have been used
  608.    in Pogo as well.  3. Used very generally as a sample name for
  609.    absolutely anything.     The old `Smokey Stover' comic strips often
  610.    included the word FOO, in particular on license plates of cars.
  611.    MOBY FOO: See MOBY.
  612.  
  613. FRIED adj. 1. Non-working due to hardware failure; burnt out.  2. Of
  614.    people, exhausted.  Said particularly of those who continue to work
  615.    in such a state.  Often used as an explanation or excuse.  "Yeah, I
  616.    know that fix destroyed the file system, but I was fried when I put
  617.    it in."
  618.  
  619. FROB 1. n. (MIT) The official Tech Model Railroad Club definition is
  620.    "FROB = protruding arm or trunnion", and by metaphoric extension
  621.    any somewhat small thing.  See FROBNITZ.  2. v. Abbreviated form of
  622.    FROBNICATE.
  623.  
  624. FROBNICATE v. To manipulate or adjust, to tweak.  Derived from
  625.    FROBNITZ (q.v.).  Usually abbreviated to FROB.  Thus one has the
  626.    saying "to frob a frob".  See TWEAK and TWIDDLE.  Usage: FROB,
  627.    TWIDDLE, and TWEAK sometimes connote points along a continuum.
  628.    FROB connotes aimless manipulation; TWIDDLE connotes gross
  629.    manipulation, often a coarse search for a proper setting; TWEAK
  630.    connotes fine-tuning.  If someone is turning a knob on an
  631.    oscilloscope, then if he's carefully adjusting it he is probably
  632.    tweaking it; if he is just turning it but looking at the screen he
  633.    is probably twiddling it; but if he's just doing it because turning
  634.    a knob is fun, he's frobbing it.
  635.  
  636. FROBNITZ, pl. FROBNITZEM (frob'nitsm) n. An unspecified physical
  637.    object, a widget.  Also refers to electronic black boxes.  This
  638.    rare form is usually abbreviated to FROTZ, or more commonly to
  639.    FROB.  Also used are FROBNULE, FROBULE, and FROBNODULE.  Starting
  640.    perhaps in 1979, FROBBOZ (fruh-bahz'), pl. FROBBOTZIM, has also
  641.    become very popular, largely due to its exposure via the Adventure
  642.    spin-off called Zork (Dungeon).  These can also be applied to
  643.    non-physical objects, such as data structures.
  644.  
  645. FROG (variant: PHROG) 1. interj. Term of disgust (we seem to have a
  646.    lot of them).  2. Used as a name for just about anything.  See FOO.
  647.    3. n. Of things, a crock.  Of people, somewhere inbetween a turkey
  648.    and a toad.    4. Jake Brown (FRG@SAIL).  5. FROGGY: adj. Similar to
  649.    BAGBITING (q.v.), but milder.  "This froggy program is taking
  650.    forever to run!"
  651.  
  652. FROTZ 1. n. See FROBNITZ.  2. MUMBLE FROTZ: An interjection of very
  653.    mild disgust.
  654.  
  655. FRY v. 1. To fail.  Said especially of smoke-producing hardware
  656.    failures.  2. More generally, to become non-working.     Usage: never
  657.    said of software, only of hardware and humans.  See FRIED.
  658.  
  659. FTP (spelled out, NOT pronounced "fittip") 1. n. The File Transfer
  660.    Protocol for transmitting files between systems on the ARPAnet.  2.
  661.    v. To transfer a file using the File Transfer Program.  "Lemme get
  662.    this copy of Wuthering Heights FTP'd from SAIL."
  663.  
  664. FUDGE 1. v. To perform in an incomplete but marginally acceptable way,
  665.    particularly with respect to the writing of a program.  "I didn't
  666.    feel like going through that pain and suffering, so I fudged it."
  667.    2. n. The resulting code.
  668.  
  669. FUDGE FACTOR n. A value or parameter that is varied in an ad hoc way
  670.    to produce the desired result.  The terms "tolerance" and "slop"
  671.    are also used, though these usually indicate a one-sided leeway,
  672.    such as a buffer which is made larger than necessary because one
  673.    isn't sure exactly how large it needs to be, and it is better to
  674.    waste a little space than to lose completely for not having enough.
  675.    A fudge factor, on the other hand, can often be tweaked in more
  676.    than one direction.    An example might be the coefficients of an
  677.    equation, where the coefficients are varied in an attempt to make
  678.    the equation fit certain criteria.
  679.  
  680. GABRIEL [for Dick Gabriel, SAIL volleyball fanatic] n. An unnecessary
  681.    (in the opinion of the opponent) stalling tactic, e.g., tying one's
  682.    shoelaces or hair repeatedly, asking the time, etc.    Also used to
  683.    refer to the perpetrator of such tactics.  Also, "pulling a
  684.    Gabriel", "Gabriel mode".
  685.  
  686. GARBAGE COLLECT v., GARBAGE COLLECTION n. See GC.
  687.  
  688. GARPLY n. (Stanford) Another meta-word popular among SAIL hackers.
  689.  
  690. GAS [as in "gas chamber"] interj. 1. A term of disgust and hatred,
  691.    implying that gas should be dispensed in generous quantities,
  692.    thereby exterminating the source of irritation.  "Some loser just
  693.    reloaded the system for no reason!  Gas!"  2. A term suggesting
  694.    that someone or something ought to be flushed out of mercy.    "The
  695.    system's wedging every few minutes.    Gas!"  3. v. FLUSH (q.v.).
  696.    "You should gas that old crufty software."  4. GASEOUS adj.
  697.    Deserving of being gassed.  Usage: primarily used by Geoff
  698.    Goodfellow at SRI, but spreading.
  699.  
  700. GC [from LISP terminology] 1. v. To clean up and throw away useless
  701.    things.  "I think I'll GC the top of my desk today."     2. To
  702.    recycle, reclaim, or put to another use.  3. To forget.  The
  703.    implication is often that one has done so deliberately.  4. n. An
  704.    instantiation of the GC process.
  705.  
  706. GEDANKEN [from Einstein's term "gedanken-experimenten", such as the
  707.    standard proof that E=mc^2] adj. An AI project which is written up
  708.    in grand detail without ever being implemented to any great extent.
  709.    Usually perpetrated by people who aren't very good hackers or find
  710.    programming distasteful or are just in a hurry.  A gedanken thesis
  711.    is usually marked by an obvious lack of intuition about what is
  712.    programmable and what is not and about what does and does not
  713.    constitute a clear specification of a program-related concept such
  714.    as an algorithm.
  715.  
  716. GLASS TTY n. A terminal which has a display screen but which, because
  717.    of hardware or software limitations, behaves like a teletype or
  718.    other printing terminal.  An example is the ADM-3 (without cursor
  719.    control).  A glass tty can't do neat display hacks, and you can't
  720.    save the output either.
  721.  
  722. GLITCH [from the Yiddish "glitshen", to slide] 1. n. A sudden
  723.    interruption in electric service, sanity, or program function.
  724.    Sometimes recoverable.  2. v. To commit a glitch.  See GRITCH.
  725.    3. v. (Stanford) To scroll a display screen.
  726.  
  727. GLORK 1. interj. Term of mild surprise, usually tinged with outrage,
  728.    as when one attempts to save the results of two hours of editing
  729.    and finds that the system has just crashed.    2. Used as a name for
  730.    just about anything.     See FOO.  3. v. Similar to GLITCH (q.v.), but
  731.    usually used reflexively.  "My program just glorked itself."
  732.  
  733. GOBBLE v. To consume or to obtain.  GOBBLE UP tends to imply
  734.    "consume", while GOBBLE DOWN tends to imply "obtain".  "The output
  735.    spy gobbles characters out of a TTY output buffer."    "I guess I'll
  736.    gobble down a copy of the documentation tomorrow."  See SNARF.
  737.  
  738. GORP (CMU) [perhaps from the generic term for dried hiker's food,
  739.    stemming from the acronym "Good Old Raisins and Peanuts"] Another
  740.    metasyntactic variable, like FOO and BAR.
  741.  
  742. GRIND v. 1. (primarily MIT) To format code, especially LISP code, by
  743.    indenting lines so that it looks pretty.  Hence, PRETTY PRINT, the
  744.    generic term for such operations.  2. To run seemingly
  745.    interminably, performing some tedious and inherently useless task.
  746.    Similar to CRUNCH.
  747.  
  748. GRITCH 1. n. A complaint (often caused by a GLITCH (q.v.)).  2. v. To
  749.    complain.  Often verb-doubled: "Gritch gritch".  3. Glitch.
  750.  
  751. GROK [from the novel "Stranger in a Strange Land", by Robert Heinlein,
  752.    where it is a Martian word meaning roughly "to be one with"] v. To
  753.    understand, usually in a global sense.
  754.  
  755. GRONK [popularized by the cartoon strip "B.C." by Johnny Hart, but the
  756.    word apparently predates that] v. 1. To clear the state of a wedged
  757.    device and restart it.  More severe than "to frob" (q.v.).  2. To
  758.    break.  "The teletype scanner was gronked, so we took the system
  759.    down."  3. GRONKED: adj. Of people, the condition of feeling very
  760.    tired or sick.  4. GRONK OUT: v. To cease functioning.  Of people,
  761.    to go home and go to sleep.    "I guess I'll gronk out now; see you
  762.    all tomorrow."
  763.  
  764. GROVEL v. To work interminably and without apparent progress.  Often
  765.    used with "over".  "The compiler grovelled over my code."  Compare
  766.    GRIND and CRUNCH.  Emphatic form: GROVEL OBSCENELY.
  767.  
  768. GRUNGY adj. Incredibly dirty or grubby.     Anything which has been
  769.    washed within the last year is not really grungy.  Also used
  770.    metaphorically; hence some programs (especially crocks) can be
  771.    described as grungy.
  772.  
  773. GUBBISH [a portmanteau of "garbage" and "rubbish"?] n. Garbage; crap;
  774.    nonsense.  "What is all this gubbish?"
  775.  
  776. GUN [from the GUN command on ITS] v. To forcibly terminate a program
  777.    or job (computer, not career).  "Some idiot left a background
  778.    process running soaking up half the cycles, so I gunned it."
  779.  
  780. HACK n. 1. Originally a quick job that produces what is needed, but
  781.    not well.  2. The result of that job.  3. NEAT HACK: A clever
  782.    technique.  Also, a brilliant practical joke, where neatness is
  783.    correlated with cleverness, harmlessness, and surprise value.
  784.    Example: the Caltech Rose Bowl card display switch circa 1961.
  785.    4. REAL HACK: A crock (occasionally affectionate).
  786.    v. 5. With "together", to throw something together so it will work.
  787.    6. To bear emotionally or physically.  "I can't hack this heat!" 7.
  788.    To work on something (typically a program).    In specific sense:
  789.    "What are you doing?"  "I'm hacking TECO."  In general sense: "What
  790.    do you do around here?"  "I hack TECO."  (The former is
  791.    time-immediate, the latter time-extended.)  More generally, "I hack
  792.    x" is roughly equivalent to "x is my bag".  "I hack solid-state
  793.    physics."  8. To pull a prank on.  See definition 3 and HACKER (def
  794.    #6).     9. v.i. To waste time (as opposed to TOOL).  "Watcha up to?"
  795.    "Oh, just hacking."    10. HACK UP (ON): To hack, but generally
  796.    implies that the result is meanings 1-2.  11. HACK VALUE: Term used
  797.    as the reason or motivation for expending effort toward a seemingly
  798.    useless goal, the point being that the accomplished goal is a hack.
  799.    For example, MacLISP has code to read and print roman numerals,
  800.    which was installed purely for hack value.
  801.    HAPPY HACKING: A farewell.  HOW'S HACKING?: A friendly greeting
  802.    among hackers.  HACK HACK: A somewhat pointless but friendly
  803.    comment, often used as a temporary farewell.
  804.    [The word HACK doesn't really have 69 different meanings.  In fact,
  805.    HACK has only one meaning, an extremely subtle and profound one
  806.    which defies articulation.  Which connotation a given HACK-token
  807.    has depends in similarly profound ways on the context.  Similar
  808.    comments apply to a couple other hacker jargon items, most notably
  809.    RANDOM. - Agre]
  810.  
  811. HACKER [originally, someone who makes furniture with an axe] n. 1. A
  812.    person who enjoys learning the details of programming systems and
  813.    how to stretch their capabilities, as opposed to most users who
  814.    prefer to learn only the minimum necessary.    2. One who programs
  815.    enthusiastically, or who enjoys programming rather than just
  816.    theorizing about programming.  3. A person capable of appreciating
  817.    hack value (q.v.).  4. A person who is good at programming quickly.
  818.    Not everything a hacker produces is a hack.    5. An expert at a
  819.    particular program, or one who frequently does work using it or on
  820.    it; example: "A SAIL hacker".  (Definitions 1 to 5 are correlated,
  821.    and people who fit them congregate.)     6. A malicious or inquisitive
  822.    meddler who tries to discover information by poking around.    Hence
  823.    "password hacker", "network hacker".
  824.  
  825. HACKISH adj. Being or involving a hack.     HACKISHNESS n.
  826.  
  827. HAIR n. The complications which make something hairy.  "Decoding TECO
  828.    commands requires a certain amount of hair."     Often seen in the
  829.    phrase INFINITE HAIR, which connotes extreme complexity.
  830.  
  831. HAIRY adj. 1. Overly complicated.  "DWIM is incredibly hairy."    2.
  832.    Incomprehensible.  "DWIM is incredibly hairy."  3.  Of people,
  833.    high-powered, authoritative, rare, expert, and/or incomprehensible.
  834.    Hard to explain except in context: "He knows this hairy lawyer who
  835.    says there's nothing to worry about."
  836.  
  837. HAKMEM n. MIT AI Memo 239 (February 1972).  A collection of neat
  838.    mathematical and programming hacks contributed by many people
  839.    at MIT and elsewhere.
  840.  
  841. HANDWAVE 1. v. To gloss over a complex point; to distract a listener;
  842.    to support a (possibly actually valid) point with blatantly faulty
  843.    logic.  2. n. The act of handwaving.     "Boy, what a handwave!"  The
  844.    use of this word is often accompanied by gestures: both hands up,
  845.    palms forward, swinging the hands in a vertical plane pivoting at
  846.    the elbows and/or shoulders (depending on the magnitude of the
  847.    handwave); alternatively, holding the forearms still while rotating
  848.    the hands at the wrist to make them flutter.     In context, the
  849.    gestures alone can suffice as a remark.
  850.  
  851. HARDWARILY adv. In a way pertaining to hardware.  "The system is
  852.    hardwarily unreliable."  The adjective "hardwary" is NOT used.  See
  853.    SOFTWARILY.
  854.  
  855. HELLO WALL  See WALL.
  856.  
  857. HIRSUTE     Occasionally used humorously as a synonym for HAIRY.
  858.  
  859. HOOK n. An extraneous piece of software or hardware included in order
  860.    to simplify later additions or debug options.  For instance, a
  861.    program might execute a location that is normally a JFCL, but by
  862.    changing the JFCL to a PUSHJ one can insert a debugging routine at
  863.    that point.
  864.  
  865. HUMONGOUS, HUMUNGOUS  See HUNGUS.
  866.  
  867. HUNGUS (hung'ghis) [perhaps related to current slang "humongous";
  868.    which one came first (if either) is unclear] adj. Large, unwieldy,
  869.    usually unmanageable.  "TCP is a hungus piece of code."  "This is a
  870.    hungus set of modifications."
  871.  
  872. IMPCOM    See TELNET.
  873.  
  874. INFINITE adj. Consisting of a large number of objects; extreme.     Used
  875.    very loosely as in: "This program produces infinite garbage."
  876.  
  877. IRP (erp) [from the MIDAS pseudo-op which generates a block of code
  878.    repeatedly, substituting in various places the car and/or cdr of
  879.    the list(s) supplied at the IRP] v. To perform a series of tasks
  880.    repeatedly with a minor substitution each time through.  "I guess
  881.    I'll IRP over these homework papers so I can give them some random
  882.    grade for this semester."
  883.  
  884. JFCL (djif'kl or dja-fik'l) [based on the PDP-10 instruction that acts
  885.    as a fast no-op] v. To cancel or annul something.  "Why don't you
  886.    jfcl that out?"  [The licence plate on Geoff Goodfellow's BMW is
  887.    JFCL.]
  888.  
  889. JIFFY n. 1. Interval of CPU time, commonly 1/60 second or 1
  890.    millisecond.     2. Indeterminate time from a few seconds to forever.
  891.    "I'll do it in a jiffy" means certainly not now and possibly never.
  892.  
  893. JOCK n. Programmer who is characterized by large and somewhat brute
  894.    force programs.  The term is particularly well-suited for systems
  895.    programmers.
  896.  
  897. J. RANDOM  See RANDOM.
  898.  
  899. JRST (jerst) [based on the PDP-10 jump instruction] v. To suddenly
  900.    change subjects.  Usage: rather rare.  "Jack be nimble, Jack be
  901.    quick; Jack jrst over the candle stick."
  902.  
  903. JSYS (jay'sis), pl. JSI (jay'sigh) [Jump to SYStem] See UUO.
  904.  
  905. KLUGE (kloodj) alt. KLUDGE [from the German "kluge", clever] n. 1. A
  906.    Rube Goldberg device in hardware or software.  2. A clever
  907.    programming trick intended to solve a particular nasty case in an
  908.    efficient, if not clear, manner.  Often used to repair bugs.     Often
  909.    verges on being a crock.  3. Something that works for the wrong
  910.    reason.  4. v. To insert a kluge into a program.  "I've kluged this
  911.    routine to get around that weird bug, but there's probably a better
  912.    way."  Also KLUGE UP.  5. KLUGE AROUND: To avoid by inserting a
  913.    kluge.  6. (WPI) A feature which is implemented in a RUDE manner.
  914.  
  915. LDB (lid'dib) [from the PDP-10 instruction set] v. To extract from the
  916.    middle.
  917.  
  918. LIFE n. A cellular-automata game invented by John Horton Conway, and
  919.    first introduced publicly by Martin Gardner (Scientific American,
  920.    October 1970).
  921.  
  922. LINE FEED (standard ASCII terminology) 1. v. To feed the paper through
  923.    a terminal by one line (in order to print on the next line).     2. n.
  924.    The "character" which causes the terminal to perform this action.
  925.  
  926. LINE STARVE (MIT) Inverse of LINE FEED.
  927.  
  928. LOGICAL [from the technical term "logical device", wherein a physical
  929.    device is referred to by an arbitrary name] adj. Understood to have
  930.    a meaning not necessarily corresponding to reality.    E.g., if a
  931.    person who has long held a certain post (e.g., Les Earnest at SAIL)
  932.    left and was replaced, the replacement would for a while be known
  933.    as the "logical Les Earnest".  The word VIRTUAL is also used.  At
  934.    SAIL, "logical" compass directions denote a coordinate system in
  935.    which "logical north" is toward San Francisco, "logical west" is
  936.    toward the ocean, etc., even though logical north varies between
  937.    physical (true) north near SF and physical west near San Jose.
  938.    (The best rule of thumb here is that El Camino Real by definition
  939.    always runs logical north-and-south.)
  940.  
  941. LOSE [from MIT jargon] v. 1. To fail.  A program loses when it
  942.    encounters an exceptional condition.     2. To be exceptionally
  943.    unaesthetic.     3. Of people, to be obnoxious or unusually stupid (as
  944.    opposed to ignorant).  4. DESERVE TO LOSE: v. Said of someone who
  945.    willfully does the wrong thing; humorously, if one uses a feature
  946.    known to be marginal.  What is meant is that one deserves the
  947.    consequences of one's losing actions.  "Boy, anyone who tries to
  948.    use MULTICS deserves to lose!"
  949.    LOSE LOSE - a reply or comment on a situation.
  950.  
  951. LOSER n. An unexpectedly bad situation, program, programmer, or
  952.    person.  Especially "real loser".
  953.  
  954. LOSS n. Something which loses.    WHAT A (MOBY) LOSS!: interjection.
  955.  
  956. LOSSAGE n. The result of a bug or malfunction.
  957.  
  958. LPT (lip'it) n. Line printer, of course.
  959.  
  960. LUSER  See USER.
  961.  
  962. MACROTAPE n. An industry standard reel of tape, as opposed to a
  963.    MICROTAPE.
  964.  
  965. MAGIC adj. 1. As yet unexplained, or too complicated to explain.
  966.    (Arthur C. Clarke once said that magic was as-yet-not-understood
  967.    science.)  "TTY echoing is controlled by a large number of magic
  968.    bits."  "This routine magically computes the parity of an eight-bit
  969.    byte in three instructions."     2. (Stanford) A feature not generally
  970.    publicized which allows something otherwise impossible, or a
  971.    feature formerly in that category but now unveiled.    Example: The
  972.    keyboard commands which override the screen-hiding features.
  973.  
  974. MARGINAL adj. 1. Extremely small.  "A marginal increase in core can
  975.    decrease GC time drastically."  See EPSILON.     2. Of extremely small
  976.    merit.  "This proposed new feature seems rather marginal to me."
  977.    3. Of extremely small probability of winning.  "The power supply
  978.    was rather marginal anyway; no wonder it crapped out."  4.
  979.    MARGINALLY: adv. Slightly.  "The ravs here are only marginally
  980.    better than at Small Eating Place."
  981.  
  982. MICROTAPE n. Occasionally used to mean a DECtape, as opposed to a
  983.    MACROTAPE.  This was the official DEC term for the stuff until
  984.    someone consed up the word "DECtape".
  985.  
  986. MISFEATURE n. A feature which eventually screws someone, possibly
  987.    because it is not adequate for a new situation which has evolved.
  988.    It is not the same as a bug because fixing it involves a gross
  989.    philosophical change to the structure of the system involved.
  990.    Often a former feature becomes a misfeature because a tradeoff was
  991.    made whose parameters subsequently changed (possibly only in the
  992.    judgment of the implementors).  "Well, yeah, it's kind of a
  993.    misfeature that file names are limited to six characters, but we're
  994.    stuck with it for now."
  995.  
  996. MOBY [seems to have been in use among model railroad fans years ago.
  997.    Entered the world of AI with the Fabritek 256K moby memory of
  998.    MIT-AI.  Derived from Melville's "Moby Dick" (some say from "Moby
  999.    Pickle").] 1. adj. Large, immense, or complex.  "A moby frob."  2.
  1000.    n. The maximum address space of a machine, hence 3. n. 256K words,
  1001.    the size of a PDP-10 moby.  (The maximum address space means the
  1002.    maximum normally addressable space, as opposed to the amount of
  1003.    physical memory a machine can have.    Thus the MIT PDP-10s each have
  1004.    two mobies, usually referred to as the "low moby" (0-777777) and
  1005.    "high moby" (1000000-1777777), or as "moby 0" and "moby 1".    MIT-AI
  1006.    has four mobies of address space: moby 2 is the PDP-6 memory, and
  1007.    moby 3 the PDP-11 interface.)  In this sense "moby" is often used
  1008.    as a generic unit of either address space (18. bits' worth) or of
  1009.    memory (about a megabyte, or 9/8 megabyte (if one accounts for
  1010.    difference between 32.- and 36.-bit words), or 5/4 megacharacters).
  1011.    4. A title of address (never of third-person reference), usually
  1012.    used to show admiration, respect, and/or friendliness to a
  1013.    competent hacker.  "So, moby Knight, how's the CONS machine doing?"
  1014.    5. adj. In backgammon, doubles on the dice, as in "moby sixes",
  1015.    "moby ones", etc.
  1016.    MOBY FOO, MOBY WIN, MOBY LOSS: standard emphatic forms.
  1017.    FOBY MOO: a spoonerism due to Greenblatt.
  1018.  
  1019. MODE n. A general state, usually used with an adjective describing the
  1020.    state.  "No time to hack; I'm in thesis mode."  Usage: in its
  1021.    jargon sense, MODE is most often said of people, though it is
  1022.    sometimes applied to programs and inanimate objects.     "If you're on
  1023.    a TTY, E will switch to non-display mode."  In particular, see DAY
  1024.    MODE, NIGHT MODE, and YOYO MODE; also COM MODE, TALK MODE, and
  1025.    GABRIEL MODE.
  1026.  
  1027. MODULO prep. Except for.  From mathematical terminology: one can
  1028.    consider saying that 4=22 "except for the 9's" (4=22 mod 9).
  1029.    "Well, LISP seems to work okay now, modulo that GC bug."
  1030.  
  1031. MOON n. 1. A celestial object whose phase is very important to
  1032.    hackers.  See PHASE OF THE MOON.  2. Dave Moon (MOON@MC).
  1033.  
  1034. MUMBLAGE n. The topic of one's mumbling (see MUMBLE).  "All that
  1035.    mumblage" is used like "all that stuff" when it is not quite clear
  1036.    what it is or how it works, or like "all that crap" when "mumble"
  1037.    is being used as an implicit replacement for obscenities.
  1038.  
  1039. MUMBLE interj. 1. Said when the correct response is either too
  1040.    complicated to enunciate or the speaker has not thought it out.
  1041.    Often prefaces a longer answer, or indicates a general reluctance
  1042.    to get into a big long discussion.  "Well, mumble."    2. Sometimes
  1043.    used as an expression of disagreement.  "I think we should buy it."
  1044.    "Mumble!"  Common variant: MUMBLE FROTZ.  3. Yet another
  1045.    metasyntactic variable, like FOO.
  1046.  
  1047. MUNCH (often confused with "mung", q.v.) v. To transform information
  1048.    in a serial fashion, often requiring large amounts of computation.
  1049.    To trace down a data structure.  Related to CRUNCH (q.v.), but
  1050.    connotes less pain.
  1051.  
  1052. MUNCHING SQUARES n. A display hack dating back to the PDP-1, which
  1053.    employs a trivial computation (involving XOR'ing of x-y display
  1054.    coordinates - see HAKMEM items 146-148) to produce an impressive
  1055.    display of moving, growing, and shrinking squares.  The hack
  1056.    usually has a parameter (usually taken from toggle switches) which
  1057.    when well-chosen can produce amazing effects.  Some of these,
  1058.    discovered recently on the LISP machine, have been christened
  1059.    MUNCHING TRIANGLES, MUNCHING W'S, and MUNCHING MAZES.
  1060.  
  1061. MUNG (variant: MUNGE) [recursive acronym for Mung Until No Good] v. 1.
  1062.    To make changes to a file, often large-scale, usually irrevocable.
  1063.    Occasionally accidental.  See BLT.  2. To destroy, usually
  1064.    accidentally, occasionally maliciously.  The system only mungs
  1065.    things maliciously.
  1066.  
  1067. N adj. 1. Some large and indeterminate number of objects; "There were
  1068.    N bugs in that crock!"; also used in its original sense of a
  1069.    variable name.  2. An arbitrarily large (and perhaps infinite)
  1070.    number.  3. A variable whose value is specified by the current
  1071.    context.  "We'd like to order N wonton soups and a family dinner
  1072.    for N-1."  4. NTH: adj. The ordinal counterpart of N. "Now for the
  1073.    Nth and last time..."  In the specific context "Nth-year grad
  1074.    student", N is generally assumed to be at least 4, and is usually 5
  1075.    or more.  See also 69.
  1076.  
  1077. NIGHT MODE  See PHASE (of people).
  1078.  
  1079. NIL [from LISP terminology for "false"] No.  Usage: used in reply to a
  1080.    question, particularly one asked using the "-P" convention.    See T.
  1081.  
  1082. OBSCURE adj. Used in an exaggeration of its normal meaning, to imply a
  1083.    total lack of comprehensibility.  "The reason for that last crash
  1084.    is obscure."     "FIND's command syntax is obscure."  MODERATELY
  1085.    OBSCURE implies that it could be figured out but probably isn't
  1086.    worth the trouble.
  1087.  
  1088. OPEN n. Abbreviation for "open (or left) parenthesis", used when
  1089.    necessary to eliminate oral ambiguity.  To read aloud the LISP form
  1090.    (DEFUN FOO (X) (PLUS X 1)) one might say: "Open def-fun foo, open
  1091.    eks close, open, plus ekx one, close close."     See CLOSE.
  1092.  
  1093. PARSE [from linguistic terminology] v. 1. To determine the syntactic
  1094.    structure of a sentence or other utterance (close to the standard
  1095.    English meaning).  Example: "That was the one I saw you."  "I can't
  1096.    parse that."     2. More generally, to understand or comprehend.
  1097.    "It's very simple; you just kretch the glims and then aos the
  1098.    zotz."  "I can't parse that."  3. Of fish, to have to remove the
  1099.    bones yourself (usually at a Chinese restaurant).  "I object to
  1100.    parsing fish" means "I don't want to get a whole fish, but a sliced
  1101.    one is okay."  A "parsed fish" has been deboned.  There is some
  1102.    controversy over whether "unparsed" should mean "bony", or also
  1103.    mean "deboned".
  1104.  
  1105. PATCH 1. n. A temporary addition to a piece of code, usually as a
  1106.    quick-and-dirty remedy to an existing bug or misfeature.  A patch
  1107.    may or may not work, and may or may not eventually be incorporated
  1108.    permanently into the program.  2. v. To insert a patch into a piece
  1109.    of code.
  1110.  
  1111. PDL (piddle or puddle) [acronym for Push Down List] n. 1. A LIFO queue
  1112.    (stack); more loosely, any priority queue; even more loosely, any
  1113.    queue.  A person's pdl is the set of things he has to do in the
  1114.    future.  One speaks of the next project to be attacked as having
  1115.    risen to the top of the pdl.     "I'm afraid I've got real work to do,
  1116.    so this'll have to be pushed way down on my pdl."  See PUSH and
  1117.    POP.     2. Dave Lebling (PDL@DM).
  1118.  
  1119. PESSIMAL [Latin-based antonym for "optimal"] adj. Maximally bad.
  1120.    "This is a pessimal situation."
  1121.  
  1122. PESSIMIZING COMPILER n. A compiler that produces object code that is
  1123.    worse than the straightforward or obvious translation.
  1124.  
  1125. PHANTOM n. (Stanford) The SAIL equivalent of a DRAGON (q.v.).  Typical
  1126.    phantoms include the accounting program, the news-wire monitor, and
  1127.    the lpt and xgp spoolers.
  1128.  
  1129. PHASE (of people) 1. n. The phase of one's waking-sleeping schedule
  1130.    with respect to the standard 24-hour cycle.    This is a useful
  1131.    concept among people who often work at night according to no fixed
  1132.    schedule.  It is not uncommon to change one's phase by as much as
  1133.    six hours/day on a regular basis.  "What's your phase?"  "I've been
  1134.    getting in about 8 PM lately, but I'm going to work around to the
  1135.    day schedule by Friday."  A person who is roughly 12 hours out of
  1136.    phase is sometimes said to be in "night mode".  (The term "day
  1137.    mode" is also used, but less frequently.)  2. CHANGE PHASE THE HARD
  1138.    WAY: To stay awake for a very long time in order to get into a
  1139.    different phase.  3. CHANGE PHASE THE EASY WAY: To stay asleep etc.
  1140.  
  1141. PHASE OF THE MOON n. Used humorously as a random parameter on which
  1142.    something is said to depend.     Sometimes implies unreliability of
  1143.    whatever is dependent, or that reliability seems to be dependent on
  1144.    conditions nobody has been able to determine.  "This feature
  1145.    depends on having the channel open in mumble mode, having the foo
  1146.    switch set, and on the phase of the moon."
  1147.  
  1148. PLUGH [from the Adventure game] v. See XYZZY.
  1149.  
  1150. POM n. Phase of the moon (q.v.).  Usage: usually used in the phrase
  1151.    "POM dependent" which means flakey (q.v.).
  1152.  
  1153. POP [based on the stack operation that removes the top of a stack, and
  1154.    the fact that procedure return addresses are saved on the stack]
  1155.    dialect: POPJ (pop-jay), based on the PDP-10 procedure return
  1156.    instruction.     v. To return from a digression.  By verb doubling,
  1157.    "Popj, popj" means roughly, "Now let's see, where were we?"
  1158.  
  1159. PPN (pip'in) [DEC terminology, short for Project-Programmer Number] n.
  1160.    1. A combination `project' (directory name) and programmer name,
  1161.    used to identify a specific directory belonging to that user.  For
  1162.    instance, "FOO,BAR" would be the FOO directory for user BAR.     Since
  1163.    the name is restricted to three letters, the programmer name is
  1164.    usually the person's initials, though sometimes it is a nickname or
  1165.    other special sequence.  (Standard DEC setup is to have two octal
  1166.    numbers instead of characters; hence the original acronym.)    2.
  1167.    Often used loosely to refer to the programmer name alone.  "I want
  1168.    to send you some mail; what's your ppn?"  Usage: not used at MIT,
  1169.    since ITS does not use ppn's.  The equivalent terms would be UNAME
  1170.    and SNAME, depending on context, but these are not used except in
  1171.    their technical senses.
  1172.  
  1173. PROTOCOL  See DO PROTOCOL.
  1174.  
  1175. PSEUDOPRIME n. A backgammon prime (six consecutive occupied points)
  1176.    with one point missing.
  1177.  
  1178. PTY (pity) n. Pseudo TTY, a simulated TTY used to run a job under the
  1179.    supervision of another job.
  1180.    PTYJOB (pity-job) n. The job being run on the PTY.  Also a common
  1181.    general-purpose program for creating and using PTYs.
  1182.    This is DEC and SAIL terminology; the MIT equivalent is STY.
  1183.  
  1184. PUNT [from the punch line of an old joke: "Drop back 15 yards and
  1185.    punt"] v. To give up, typically without any intention of retrying.
  1186.  
  1187. PUSH [based on the stack operation that puts the current information
  1188.    on a stack, and the fact that procedure call addresses are saved on
  1189.    the stack] dialect: PUSHJ (push-jay), based on the PDP-10 procedure
  1190.    call instruction.  v. To enter upon a digression, to save the
  1191.    current discussion for later.
  1192.  
  1193. QUES (kwess) 1. n. The question mark character ("?").  2. interj.
  1194.    What?  Also QUES QUES?  See WALL.
  1195.  
  1196. QUUX [invented by Steele.  Mythically, from the Latin semi-deponent
  1197.    verb QUUXO, QUUXARE, QUUXANDUM IRI; noun form variously QUUX
  1198.    (plural QUUCES, Anglicized to QUUXES) and QUUXU (genitive plural is
  1199.    QUUXUUM, four U's in seven letters).] 1. Originally, a meta-word
  1200.    like FOO and FOOBAR.     Invented by Guy Steele for precisely this
  1201.    purpose when he was young and naive and not yet interacting with
  1202.    the real computing community.  Many people invent such words; this
  1203.    one seems simply to have been lucky enough to have spread a little.
  1204.    2. interj. See FOO; however, denotes very little disgust, and is
  1205.    uttered mostly for the sake of the sound of it.  3. n. Refers to
  1206.    one of four people who went to Boston Latin School and eventually
  1207.    to MIT:
  1208.     THE GREAT QUUX:     Guy L. Steele Jr.
  1209.     THE LESSER QUUX:  David J. Littleboy
  1210.     THE MEDIOCRE QUUX:  Alan P. Swide
  1211.     THE MICRO QUUX:     Sam Lewis
  1212.    (This taxonomy is said to be similarly applied to three Frankston
  1213.    brothers at MIT.)  QUUX, without qualification, usually refers to
  1214.    The Great Quux, who is somewhat infamous for light verse and for
  1215.    the "Crunchly" cartoons.  4. QUUXY: adj. Of or pertaining to a
  1216.    QUUX.
  1217.  
  1218. RANDOM adj. 1. Unpredictable (closest to mathematical definition);
  1219.    weird.  "The system's been behaving pretty randomly."  2. Assorted;
  1220.    undistinguished.  "Who was at the conference?"  "Just a bunch of
  1221.    random business types."  3.    Frivolous; unproductive; undirected
  1222.    (pejorative).  "He's just a random loser."  4. Incoherent or
  1223.    inelegant; not well organized.  "The program has a random set of
  1224.    misfeatures."  "That's a random name for that function."  "Well,
  1225.    all the names were chosen pretty randomly."    5. Gratuitously wrong,
  1226.    i.e., poorly done and for no good apparent reason.  For example, a
  1227.    program that handles file name defaulting in a particularly useless
  1228.    way, or a routine that could easily have been coded using only
  1229.    three ac's, but randomly uses seven for assorted non-overlapping
  1230.    purposes, so that no one else can invoke it without first saving
  1231.    four extra ac's.  6. In no particular order, though deterministic.
  1232.    "The I/O channels are in a pool, and when a file is opened one is
  1233.    chosen randomly."  n. 7. A random hacker; used particularly of high
  1234.    school students who soak up computer time and generally get in the
  1235.    way.     8. (occasional MIT usage) One who lives at Random Hall.
  1236.    J. RANDOM is often prefixed to a noun to make a "name" out of it
  1237.    (by comparison to common names such as "J. Fred Muggs").  The most
  1238.    common uses are "J. Random Loser" and "J. Random Nurd" ("Should
  1239.    J. Random Loser be allowed to gun down other people?"), but it
  1240.    can be used just as an elaborate version of RANDOM in any sense.
  1241.    [See also the note at the end of the entry for HACK.]
  1242.  
  1243. RANDOMNESS n. An unexplainable misfeature; gratuitous inelegance.
  1244.    Also, a hack or crock which depends on a complex combination
  1245.    of coincidences (or rather, the combination upon which the
  1246.    crock depends).  "This hack can output characters 40-57 by
  1247.    putting the character in the accumulator field of an XCT and
  1248.    then extracting 6 bits -- the low two bits of the XCT opcode
  1249.    are the right thing."  "What randomness!"
  1250.  
  1251. RAPE v. To (metaphorically) screw someone or something, violently.
  1252.    Usage: often used in describing file-system damage.    "So-and-so was
  1253.    running a program that did absolute disk I/O and ended up raping
  1254.    the master directory."
  1255.  
  1256. RAVE (WPI) v. 1. To persist in discussing a specific subject.  2. To
  1257.    speak authoritatively on a subject about which one knows very
  1258.    little.  3. To complain to a person who is not in a position to
  1259.    correct the difficulty.  4. To purposely annoy another person
  1260.    verbally.  5. To evangelize.     See FLAME.  Also used to describe
  1261.    a less negative form of blather, such as friendly bullshitting.
  1262.  
  1263. REAL USER n. 1. A commercial user.  One who is paying "real" money for
  1264.    his computer usage.    2. A non-hacker.  Someone using the system for
  1265.    an explicit purpose (research project, course, etc.).  See USER.
  1266.  
  1267. REAL WORLD, THE n. 1. In programming, those institutions at which
  1268.    programming may be used in the same sentence as FORTRAN, COBOL,
  1269.    RPG, IBM, etc.  2. To programmers, the location of non-programmers
  1270.    and activities not related to programming.  3. A universe in which
  1271.    the standard dress is shirt and tie and in which a person's working
  1272.    hours are defined as 9 to 5.     4. The location of the status quo.
  1273.    5. Anywhere outside a university.  "Poor fellow, he's left MIT and
  1274.    gone into the real world."  Used pejoratively by those not in
  1275.    residence there.  In conversation, talking of someone who has
  1276.    entered the real world is not unlike talking about a deceased
  1277.    person.
  1278.  
  1279. RECURSION n. See RECURSION, TAIL RECURSION.
  1280.  
  1281. REL  See BIN.
  1282.  
  1283. RIGHT THING, THE n. That which is "obviously" the correct or
  1284.    appropriate thing to use, do, say, etc.  Use of this term often
  1285.    implies that in fact reasonable people may disagree.     "Never let
  1286.    your conscience keep you from doing the right thing!"  "What's the
  1287.    right thing for LISP to do when it reads '(.)'?"
  1288.  
  1289. RUDE (WPI) adj. 1. (of a program) Badly written.  2. Functionally
  1290.    poor, e.g. a program which is very difficult to use because of
  1291.    gratuitously poor (random?) design decisions.  See CUSPY.
  1292.  
  1293. SACRED adj. Reserved for the exclusive use of something (a
  1294.    metaphorical extension of the standard meaning).  "Accumulator 7 is
  1295.    sacred to the UUO handler."    Often means that anyone may look at
  1296.    the sacred object, but clobbering it will screw whatever it is
  1297.    sacred to.
  1298.  
  1299. SAGA (WPI) n. A cuspy but bogus raving story dealing with N random
  1300.    broken people.
  1301.  
  1302. SAV (save)  See BIN.
  1303.  
  1304. SEMI 1. n. Abbreviation for "semicolon", when speaking.     "Commands to
  1305.    GRIND are prefixed by semi-semi-star" means that the prefix is
  1306.    ";;*", not 1/4 of a star.  2. Prefix with words such as
  1307.    "immediately", as a qualifier.  "When is the system coming up?"
  1308.    "Semi-immediately."
  1309.  
  1310. SERVER n. A kind of DAEMON which performs a service for the requester,
  1311.    which often runs on a computer other than the one on which the
  1312.    server runs.
  1313.  
  1314. SHIFT LEFT (RIGHT) LOGICAL [from any of various machines' instruction
  1315.    sets] 1. v. To move oneself to the left (right).  To move out of
  1316.    the way.  2. imper. Get out of that (my) seat!  Usage: often used
  1317.    without the "logical", or as "left shift" instead of "shift left".
  1318.    Sometimes heard as LSH (lish), from the PDP-10 instruction set.
  1319.  
  1320. SHR (share or shir)  See BIN.
  1321.  
  1322. SHRIEK    See EXCL.  (Occasional CMU usage.)
  1323.  
  1324. 69 adj. Large quantity.     Usage: Exclusive to MIT-AI.  "Go away, I have
  1325.    69 things to do to DDT before worrying about fixing the bug in the
  1326.    phase of the moon output routine..."
  1327.    [Note: Actually, any number less than 100 but large enough to have
  1328.    no obvious magic properties will be recognized as a "large number".
  1329.    There is no denying that "69" is the local favorite.     I don't know
  1330.    whether its origins are related to the obscene interpretation, but
  1331.    I do know that 69 decimal = 105 octal, and 69 hexadecimal = 105
  1332.    decimal, which is a nice property. - GLS]
  1333.  
  1334. SLOP n. 1. A one-sided fudge factor (q.v.).  Often introduced to avoid
  1335.    the possibility of a fencepost error (q.v.).     2. (used by compiler
  1336.    freaks) The ratio of code generated by a compiler to hand-compiled
  1337.    code, minus 1; i.e., the space (or maybe time) you lose because you
  1338.    didn't do it yourself.
  1339.  
  1340. SLURP v. To read a large data file entirely into core before working
  1341.    on it.  "This program slurps in a 1K-by-1K matrix and does an FFT."
  1342.  
  1343. SMART adj. Said of a program that does the Right Thing (q.v.) in a
  1344.    wide variety of complicated circumstances.  There is a difference
  1345.    between calling a program smart and calling it intelligent; in
  1346.    particular, there do not exist any intelligent programs.
  1347.  
  1348. SMOKING CLOVER n. A psychedelic color munch due to Gosper.
  1349.  
  1350. SMOP [Simple (or Small) Matter of Programming] n. A piece of code, not
  1351.    yet written, whose anticipated length is significantly greater than
  1352.    its complexity.  Usage: used to refer to a program that could
  1353.    obviously be written, but is not worth the trouble.
  1354.  
  1355. SNARF v. To grab, esp. a large document or file for the purpose of
  1356.    using it either with or without the author's permission.  See BLT.
  1357.    Variant: SNARF (IT) DOWN.  (At MIT on ITS, DDT has a command called
  1358.    :SNARF which grabs a job from another (inferior) DDT.)
  1359.  
  1360. SOFTWARE ROT n. Hypothetical disease the existence of which has been
  1361.    deduced from the observation that unused programs or features will
  1362.    stop working after sufficient time has passed, even if "nothing has
  1363.    changed".  Also known as "bit decay".
  1364.  
  1365. SOFTWARILY adv. In a way pertaining to software.  "The system is
  1366.    softwarily unreliable."  The adjective "softwary" is NOT used.  See
  1367.    HARDWARILY.
  1368.  
  1369. SOS 1. (ess-oh-ess) n. A losing editor, SON OF STOPGAP.     2. (sahss) v.
  1370.    Inverse of AOS, from the PDP-10 instruction set.
  1371.  
  1372. SPAZZ 1. v. To behave spastically or erratically; more often, to
  1373.    commit a single gross error.     "Boy, is he spazzing!"     2. n. One who
  1374.    spazzes.  "Boy, what a spazz!"  3. n. The result of spazzing.
  1375.    "Boy, what a spazz!"
  1376.  
  1377. SPLAT n. 1. Name used in many places (DEC, IBM, and others) for the
  1378.    ASCII star ("*") character.    2. (MIT) Name used by some people for
  1379.    the ASCII pound-sign ("#") character.  3. (Stanford) Name used by
  1380.    some people for the Stanford/ITS extended ASCII circle-x character.
  1381.    (This character is also called "circle-x", "blobby", and "frob",
  1382.    among other names.)    4. (Stanford) Name for the semi-mythical
  1383.    extended ASCII circle-plus character.  5. Canonical name for an
  1384.    output routine that outputs whatever the the local interpretation
  1385.    of splat is.     Usage: nobody really agrees what character "splat"
  1386.    is, but the term is common.
  1387.  
  1388. SUPDUP v. To communicate with another ARPAnet host using the SUPDUP
  1389.    program, which is a SUPer-DUPer TELNET talking a special display
  1390.    protocol used mostly in talking to ITS sites.  Sometimes
  1391.    abbreviated to SD.
  1392.  
  1393. STATE n. Condition, situation.    "What's the state of NEWIO?"  "It's
  1394.    winning away."  "What's your state?"     "I'm about to gronk out."  As
  1395.    a special case, "What's the state of the world?" (or, more silly,
  1396.    "State-of-world-P?") means "What's new?" or "What's going on?"
  1397.  
  1398. STOPPAGE n. Extreme lossage (see LOSSAGE) resulting in something
  1399.    (usually vital) becoming completely unusable.
  1400.  
  1401. STY (pronounced "sty", not spelled out) n. A pseudo-teletype, which is
  1402.    a two-way pipeline with a job on one end and a fake keyboard-tty on
  1403.    the other.  Also, a standard program which provides a pipeline from
  1404.    its controlling tty to a pseudo-teletype (and thence to another
  1405.    tty, thereby providing a "sub-tty").
  1406.    This is MIT terminology; the SAIL and DEC equivalent is PTY.
  1407.  
  1408. SUPERPROGRAMMER n. See "wizard", "hacker".  Usage: rare.  (Becoming
  1409.    more common among IBM and Yourdon types.)
  1410.  
  1411. SWAPPED adj. From the use of secondary storage devices to implement
  1412.    virtual memory in computer systems.    Something which is SWAPPED IN
  1413.    is available for immediate use in main memory, and otherwise is
  1414.    SWAPPED OUT.     Often used metaphorically to refer to people's
  1415.    memories ("I read TECO ORDER every few months to keep the
  1416.    information swapped in.") or to their own availability ("I'll swap
  1417.    you in as soon as I finish looking at this other problem.").
  1418.  
  1419. SYSTEM n. 1. The supervisor program on the computer.  2. Any
  1420.    large-scale program.     3. Any method or algorithm.  4. The way
  1421.    things are usually done.  Usage: a fairly ambiguous word.  "You
  1422.    can't beat the system."
  1423.    SYSTEM HACKER: one who hacks the system (in sense 1 only; for sense
  1424.    2 one mentions the particular program: e.g., LISP HACKER)
  1425.  
  1426. T [from LISP terminology for "true"] 1. Yes.  Usage: used in reply to
  1427.    a question, particularly one asked using the "-P" convention).  See
  1428.    NIL.     2. See TIME T.
  1429.  
  1430. TAIL RECURSION n. See TAIL RECURSION.
  1431.  
  1432. TALK MODE  See COM MODE.
  1433.  
  1434. TASTE n. (primarily MIT-DMS) The quality in programs which tends to be
  1435.    inversely proportional to the number of features, hacks, and kluges
  1436.    programmed into it.    Also, TASTY, TASTEFUL, TASTEFULNESS.  "This
  1437.    feature comes in N tasty flavors."  Although TASTEFUL and FLAVORFUL
  1438.    are essentially synonyms, TASTE and FLAVOR are not.
  1439.  
  1440. TECO (tee'koe) [acronym for Text Editor and COrrector] 1. n. A text
  1441.    editor developed at MIT, and modified by just about everybody.  If
  1442.    all the dialects are included, TECO might well be the single most
  1443.    prolific editor in use.  Noted for its powerful pseudo-programming
  1444.    features and its incredibly hairy syntax.  2. v. To edit using the
  1445.    TECO editor in one of its infinite forms; sometimes used to mean
  1446.    "to edit" even when not using TECO!    Usage: rare at SAIL, where
  1447.    most people wouldn't touch TECO with a TENEX pole.
  1448.    [Historical note: DEC grabbed an ancient version of MIT TECO many
  1449.    years ago when it was still a TTY-oriented editor.  By now, TECO at
  1450.    MIT is highly display-oriented and is actually a language for
  1451.    writing editors, rather than an editor.  Meanwhile, the outside
  1452.    world's various versions of TECO remain almost the same as the MIT
  1453.    version of ten years ago.  DEC recently tried to discourage its
  1454.    use, but an underground movement of sorts kept it alive.]
  1455.    [Since this note was written I found out that DEC tried to force
  1456.    their hackers by administrative decision to use a hacked up and
  1457.    generally lobotomized version of SOS instead of TECO, and they
  1458.    revolted. - MRC]
  1459.  
  1460. TELNET v. To communicate with another ARPAnet host using the TELNET
  1461.    protocol.  TOPS-10 people use the word IMPCOM since that is the
  1462.    program name for them.  Sometimes abbreviated to TN.     "I usually TN
  1463.    over to SAIL just to read the AP News."
  1464.  
  1465. TENSE adj. Of programs, very clever and efficient.  A tense piece of
  1466.    code often got that way because it was highly bummed, but sometimes
  1467.    it was just based on a great idea.  A comment in a clever display
  1468.    routine by Mike Kazar: "This routine is so tense it will bring
  1469.    tears to your eyes.    Much thanks to Craig Everhart and James
  1470.    Gosling for inspiring this hack attack."  A tense programmer is one
  1471.    who produces tense code.
  1472.  
  1473. TERPRI (tur'pree) [from the LISP 1.5 (and later, MacLISP) function to
  1474.    start a new line of output] v. To output a CRLF (q.v.).
  1475.  
  1476. THEORY n. Used in the general sense of idea, plan, story, or set of
  1477.    rules.  "What's the theory on fixing this TECO loss?"  "What's the
  1478.    theory on dinner tonight?"  ("Chinatown, I guess.")    "What's the
  1479.    current theory on letting losers on during the day?"     "The theory
  1480.    behind this change is to fix the following well-known screw..."
  1481.  
  1482. THRASH v. To move wildly or violently, without accomplishing anything
  1483.    useful.  Swapping systems which are overloaded waste most of their
  1484.    time moving pages into and out of core (rather than performing
  1485.    useful computation), and are therefore said to thrash.
  1486.  
  1487. TICK n. 1. Interval of time; basic clock time on the computer.
  1488.    Typically 1/60 second.  See JIFFY.  2. In simulations, the discrete
  1489.    unit of time that passes "between" iterations of the simulation
  1490.    mechanism.  In AI applications, this amount of time is often left
  1491.    unspecified, since the only constraint of interest is that caused
  1492.    things happen after their causes.  This sort of AI simulation is
  1493.    often pejoratively referred to as "tick-tick-tick" simulation,
  1494.    especially when the issue of simultaneity of events with long,
  1495.    independent chains of causes is handwaved.
  1496.  
  1497. TIME T n. 1. An unspecified but usually well-understood time, often
  1498.    used in conjunction with a later time T+1.  "We'll meet on campus
  1499.    at time T or at Louie's at time T+1."  2. SINCE (OR AT) TIME T
  1500.    EQUALS MINUS INFINITY: A long time ago; for as long as anyone can
  1501.    remember; at the time that some particular frob was first designed.
  1502.  
  1503. TOOL v.i. To work; to study.  See HACK (def #9).
  1504.  
  1505. TRAP 1. n. A program interrupt, usually used specifically to refer to
  1506.    an interrupt caused by some illegal action taking place in the user
  1507.    program.  In most cases the system monitor performs some action
  1508.    related to the nature of the illegality, then returns control to
  1509.    the program.     See UUO.  2. v. To cause a trap.  "These instructions
  1510.    trap to the monitor."  Also used transitively to indicate the cause
  1511.    of the trap.     "The monitor traps all input/output instructions."
  1512.  
  1513. TTY (titty) n. Terminal of the teletype variety, characterized by a
  1514.    noisy mechanical printer, a very limited character set, and poor
  1515.    print quality.  Usage: antiquated (like the TTY's themselves).
  1516.    Sometimes used to refer to any terminal at all; sometimes used
  1517.    to refer to the particular terminal controlling a job.
  1518.  
  1519. TWEAK v. To change slightly, usually in reference to a value.  Also
  1520.    used synonymously with TWIDDLE.  See FROBNICATE and FUDGE FACTOR.
  1521.  
  1522. TWENEX n. The TOPS-20 operating system by DEC.    So named because
  1523.    TOPS-10 was a typically crufty DEC operating system for the PDP-10.
  1524.    BBN developed their own system, called TENEX (TEN EXecutive), and
  1525.    in creating TOPS-20 for the DEC-20 DEC copied TENEX and adapted it
  1526.    for the 20.    Usage: DEC people cringe when they hear TOPS-20
  1527.    referred to as "Twenex", but the term seems to be catching on
  1528.    nevertheless.  Release 3 of TOPS-20 is sufficiently different from
  1529.    release 1 that some (not all) hackers have stopped calling it
  1530.    TWENEX, though the written abbreviation "20x" is still used.
  1531.  
  1532. TWIDDLE n. 1. tilde (ASCII 176, "~").  Also called "squiggle",
  1533.    "sqiggle" (sic--pronounced "skig'gul"), and "twaddle", but twiddle
  1534.    is by far the most common term.  2. A small and insignificant
  1535.    change to a program.     Usually fixes one bug and generates several
  1536.    new ones.  3. v. To change something in a small way.     Bits, for
  1537.    example, are often twiddled.     Twiddling a switch or knob implies
  1538.    much less sense of purpose than toggling or tweaking it; see
  1539.    FROBNICATE.
  1540.  
  1541. UP adj. 1. Working, in order.  "The down escalator is up."  2. BRING
  1542.    UP: v. To create a working version and start it.  "They brought up
  1543.    a down system."
  1544.  
  1545. USER n. A programmer who will believe anything you tell him.  One who
  1546.    asks questions.  Identified at MIT with "loser" by the spelling
  1547.    "luser".  See REAL USER.
  1548.    [Note by GLS: I don't agree with RF's definition at all.
  1549.    Basically, there are two classes of people who work with a program:
  1550.    there are implementors (hackers) and users (losers).     The users are
  1551.    looked down on by hackers to a mild degree because they don't
  1552.    understand the full ramifications of the system in all its glory.
  1553.    (A few users who do are known as real winners.)  It is true that
  1554.    users ask questions (of necessity).    Very often they are annoying
  1555.    or downright stupid.]
  1556.  
  1557. UUO (you-you-oh) [short for "Un-Used Operation"] n. A DEC-10 system
  1558.    monitor call.  The term "Un-Used Operation" comes from the fact
  1559.    that, on DEC-10 systems, monitor calls are implemented as invalid
  1560.    or illegal machine instructions, which cause traps to the monitor
  1561.    (see TRAP).    The SAIL manual describing the available UUO's has a
  1562.    cover picture showing an unidentified underwater object.  See YOYO.
  1563.    [Note: DEC sales people have since decided that "Un-Used Operation"
  1564.    sounds bad, so UUO now stands for "Unimplemented User Operation".]
  1565.    Tenex and Twenex systems use the JSYS machine instruction (q.v.),
  1566.    which is halfway between a legal machine instruction and a UUO,
  1567.    since KA-10 Tenices implement it as a hardware instruction which
  1568.    can be used as an ordinary subroutine call (sort of a "pure JSR").
  1569.  
  1570. VANILLA adj. Ordinary flavor, standard.     See FLAVOR.  When used of
  1571.    food, very often does not mean that the food is flavored with
  1572.    vanilla extract!  For example, "vanilla-flavored wonton soup" (or
  1573.    simply "vanilla wonton soup") means ordinary wonton soup, as
  1574.    opposed to hot and sour wonton soup.
  1575.  
  1576. VAXEN [from "oxen", perhaps influenced by "vixen"] n. pl. The plural
  1577.    of VAX (a DEC machine).
  1578.  
  1579. VIRGIN adj. Unused, in reference to an instantiation of a program.
  1580.    "Let's bring up a virgin system and see if it crashes again."
  1581.    Also, by extension, unused buffers and the like within a program.
  1582.  
  1583. VIRTUAL adj. 1. Common alternative to LOGICAL (q.v.), but never used
  1584.    with compass directions.  2.     Performing the functions of.  Virtual
  1585.    memory acts like real memory but isn't.
  1586.  
  1587. VISIONARY n. One who hacks vision (in an AI context, such as the
  1588.    processing of visual images).
  1589.  
  1590. WALDO [probably taken from the story "Waldo", by Heinlein, which is
  1591.    where the term was first used to mean a mechanical adjunct to a
  1592.    human limb] Used at Harvard, particularly by Tom Cheatham and
  1593.    students, instead of FOOBAR as a meta-syntactic variable and
  1594.    general nonsense word.  See FOO, BAR, FOOBAR, QUUX.
  1595.  
  1596. WALL [shortened form of HELLO WALL, apparently from the phrase "up
  1597.    against a blank wall"] (WPI) interj. 1. An indication of confusion,
  1598.    usually spoken with a quizzical tone.  "Wall??"  2. A request for
  1599.    further explication.
  1600.  
  1601. WALLPAPER n. A file containing a listing (e.g., assembly listing) or
  1602.    transcript, esp. a file containing a transcript of all or part of a
  1603.    login session.  (The idea was that the LPT paper for such listings
  1604.    was essentially good only for wallpaper, as evidenced at SAIL where
  1605.    it was used as such to cover windows.)  Usage: not often used now,
  1606.    esp. since other systems have developed other terms for it (e.g.,
  1607.    PHOTO on TWENEX).  The term possibly originated on ITS, where the
  1608.    commands to begin and end transcript files are still :WALBEG and
  1609.    :WALEND, with default file DSK:WALL PAPER.
  1610.  
  1611. WATERBOTTLE SOCCER n. A deadly sport practiced mainly by Sussman's
  1612.    graduate students.  It, along with chair bowling, is the most
  1613.    evident manifestation of the "locker room atmosphere" said to
  1614.    reign in that sphere.  (Sussman doesn't approve.)  [As of 11/82,
  1615.    it's reported that the sport has given way to a new game called
  1616.    "disc-boot", and Sussman even participates occasionally.]
  1617.  
  1618. WEDGED [from "head wedged up ass"] adj. To be in a locked state,
  1619.    incapable of proceeding without help.  (See GRONK.)    Often refers
  1620.    to humans suffering misconceptions.    "The swapper is wedged."
  1621.    This term is sometimes used as a synonym for DEADLOCKED (q.v.).
  1622.  
  1623. WHAT n. The question mark character ("?").  See QUES.  Usage: rare,
  1624.    used particularly in conjunction with WOW.
  1625.  
  1626. WHEEL n. 1. A privilege bit that canonically allows the possessor to
  1627.    perform any operation on a timesharing system, such as read or
  1628.    write any file on the system regardless of protections, change or
  1629.    or look at any address in the running monitor, crash or reload the
  1630.    system, and kill/create jobs and user accounts.  The term was
  1631.    invented on the TENEX operating system, and carried over to
  1632.    TOPS-20, Xerox-IFS and others.  2. A person who posses a wheel bit.
  1633.    "We need to find a wheel to unwedge the hung tape drives."
  1634.  
  1635. WHEEL WARS [from LOTS at Stanford University] A period during which
  1636.    student wheels hack each other by attempting to log each other out
  1637.    of the system, delete each other's files, or otherwise wreak havoc,
  1638.    usually at the expense of the lesser users.
  1639.  
  1640. WIN [from MIT jargon] 1. v. To succeed.     A program wins if no
  1641.    unexpected conditions arise.     2. BIG WIN: n. Serendipity.
  1642.    Emphatic forms: MOBY WIN, SUPER WIN, HYPER-WIN (often used
  1643.    interjectively as a reply).    For some reason SUITABLE WIN is also
  1644.    common at MIT, usually in reference to a satisfactory solution to a
  1645.    problem.  See LOSE.
  1646.  
  1647. WINNAGE n. The situation when a lossage is corrected, or when
  1648.    something is winning.  Quite rare.  Usage: also quite rare.
  1649.  
  1650. WINNER 1. n. An unexpectedly good situation, program, programmer or
  1651.    person.  2. REAL WINNER: Often sarcastic, but also used as high
  1652.    praise.
  1653.  
  1654. WINNITUDE n. The quality of winning (as opposed to WINNAGE, which is
  1655.    the result of winning).  "That's really great!  Boy, what
  1656.    winnitude!"
  1657.  
  1658. WIZARD n. 1. A person who knows how a complex piece of software or
  1659.    hardware works; someone who can find and fix his bugs in an
  1660.    emergency.  Rarely used at MIT, where HACKER is the preferred term.
  1661.    2. A person who is permitted to do things forbidden to ordinary
  1662.    people, e.g., a "net wizard" on a TENEX may run programs which
  1663.    speak low-level host-imp protocol; an ADVENT wizard at SAIL may
  1664.    play Adventure during the day.
  1665.  
  1666. WORMHOLE n. A location in a monitor which contains the address of a
  1667.    routine, with the specific intent of making it easy to substitute a
  1668.    different routine.  The following quote comes from "Polymorphic
  1669.    Systems", vol. 2, p. 54:
  1670.  
  1671.    "Any type of I/O device can be substituted for the standard device
  1672.    by loading a simple driver routine for that device and installing
  1673.    its address in one of the monitor's `wormholes.'*
  1674.    ----------
  1675.    *The term `wormhole' has been used to describe a hypothetical
  1676.    astronomical situation where a black hole connects to the `other
  1677.    side' of the universe.  When this happens, information can pass
  1678.    through the wormhole, in only one direction, much as `assumptions'
  1679.    pass down the monitor's wormholes."
  1680.  
  1681. WOW  See EXCL.
  1682.  
  1683. XGP 1. n. Xerox Graphics Printer.  2. v. To print something on the
  1684.    XGP.     "You shouldn't XGP such a large file."
  1685.  
  1686. XYZZY [from the Adventure game] adj. See PLUGH.
  1687.  
  1688. YOYO n. DEC service engineers' slang for UUO (q.v.).  Usage: rare at
  1689.    Stanford and MIT, has been found at random DEC installations.
  1690.  
  1691. YOYO MODE n. State in which the system is said to be when it rapidly
  1692.    alternates several times between being up and being down.
  1693.  
  1694. YU-SHIANG WHOLE FISH n. The character gamma (extended SAIL ASCII 11),
  1695.    which with a loop in its tail looks like a fish.  Usage: used
  1696.    primarily by people on the MIT LISP Machine.     Tends to elicit
  1697.    incredulity from people who hear about it second-hand.
  1698.  
  1699. ZERO v. 1. To set to zero.  Usually said of small pieces of data, such
  1700.    as bits or words.  2. To erase; to discard all data from.  Said of
  1701.    disks and directories, where "zeroing" need not involve actually
  1702.    writing zeroes throughout the area being zeroed.
  1703.  
  1704.